home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Languguage OS 2
/
Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO
/
language
/
ox
/
whatoxis
< prev
next >
Wrap
Text File
|
1994-10-29
|
3KB
|
70 lines
This announces Ox:
An Attribute Grammar Compiling System
based on
Yacc, Lex, and C
Ox generalizes the function of Yacc in the way that attribute
grammars generalize context-free grammars. Ordinary Yacc and Lex
specifications may be augmented with definitions of synthesized
and inherited attributes written in C syntax. Ox checks these
specifications for consistency and completeness, and generates
from them a program that builds and decorates attributed parse
trees. Ox accepts a most general class of attribute grammars.
The user may specify postdecoration traversals for easy ordering
of side effects such as code generation. Ox handles the tedious
and error-prone details of writing code for parse-tree
management, so its use eases problems of security and
maintainability associated with that aspect of translator
development.
Ox is a Yacc/Lex/C preprocessor, and is designed to bring
attribute grammars to the mainstream of Unix-based language
development. Ox inherits all of the familiar syntax and
semantics of Yacc, Lex, and C, so it is a good choice for
language designers, experimenters, and developers familiar with
those tools. It is relatively easy to convert programs between
Ox code and "pure Yacc/Lex/C" code. Ox is carefully engineered
for reliability, portability, compatibility, simplicity, and
efficiency. Ox can be used with Bison, Flex, and C++.
Use of Ox is free. Code generated by Ox is the property of the
Ox user. The distribution is available by anonymous ftp from the
directory `/pub/ox' on:
ftp.cs.iastate.edu
The Ox G1.04 distribution includes:
* source code (Ox is written in Yacc, Lex, and C)
* tutorial introduction (new, informal, 19 pages). This
emphasizes examples and helps you cover the main points
quickly. If you already know Yacc, Lex, and AGs, you are
soon ready to begin using Ox with your favorite Yacc/Lex
parser.
* user reference manual (indexed, up-to-date, 57 pages)
* on-line manual
* small examples (files containing all of the examples from
the user reference manual and the tutorial introduction)
* Ox-ready Yacc/Lex parsers for C, C++, Pascal, Ada, and
FORTRAN
* a large example (block-structured imperative-language
compiler suitable for instruction and experimentation) with
documentation
Ox is designed and implemented by Kurt Bischoff, in association
with Kelvin Nilsen, Department of Computer Science, Iowa State
University. Questions about Ox should be sent to:
ox-request@cs.iastate.edu
-------------
Kurt Bischoff, bischoff@cs.iastate.edu
Sat Apr 16 20:05:07 CDT 1994